The present invention relates to a host apparatus, a device, and a method for controlling a communication system, in which the host apparatus is used in a communication system and the host apparatus and a plurality of devices are connected by way of a bus for performing serial communication and each device is operated by bus-supplied power of the host apparatus.
In the field of personal computers, peripheral devices (device) having a USB (Universal Serial Bus) interface complying with the USB 2.0/1.1 standard, which is a serial interface standard, is becoming a global standard. Further, this standard will continue to spread in the future. The USB standard specifies the capability of supplying current of up to a maximum of 500 mA via the USB cable for every port so that each device is operated by the cable supplied power. That is, in a communication system for performing data communication with the USB interface, power is supplied from the computer (host apparatus), which is provided with the host function, to a device via a USB cable so as to drive the device. Recently, due to the popularization of devices capable of communicating via a USB interface, many devices are connected to the host apparatus by way of the USB interface. In such a communication system, the devices connecting to the host apparatus have increased, and when inappropriate power consumption exceeding the capability (suppliable current) of the host apparatus side occurs in each device, the operation of the entire system becomes unstable. Thus, a technique for avoiding such situation is necessary.
In a communication system connecting a host apparatus and devices with USB interfaces, connection and disconnection of each device are enabled in a state in which the power of the host apparatus is turned on. When connected, a device is instantly recognized in order to enable use of that device. That is, in such a communication system, when a new device is connected to the host apparatus, negotiation is performed between the host apparatus and the device to recognize the newly connected device.
FIG. 40 is a flowchart showing the process executed by the host apparatus in recognizing the newly connected device.
First, in step 1, the host apparatus issues a request command to the device to request equipment information for the device and acquires the equipment information sent from the device in response to the request command. At the point of time when a supply command is issued, current of 100 mA is supplied to the connected device via the USB cable, and a function block for carrying out the negotiation is activated in that device.
The equipment information acquired in step 1 includes information on maximum consumption current required to drive the device, and the host apparatus proceeds to step 2 to determine whether the maximum consumption current can be supplied or not. When determining that the current can be supplied, the host apparatus proceeds to step 3 and recognizes the connected device as a usable device and starts bus power supply (power supply with a bus) to the device. If, on the other, the maximum consumption current of the device is determined in step 2 to be current that cannot be supplied, the host apparatus does not recognize the connected device as a usable device.
In this way, when the maximum consumption current of the connected device exceeds the supply capability of the host apparatus, the device is not recognized by the host apparatus and thus cannot communicate with the host apparatus.
Further, in the communication system, the host apparatus controls all the devices connected to the network of the system. That is, each connected device carries out operations of data transfer and the like in response to instructions from the host apparatus and do not operate when there is no instruction from the host apparatus.
As shown in FIG. 41, the data transfer using the USB interface is carried out in units referred to as transactions, which are configured by a plurality of packets. That is, data transfer is in a communication format in which the data transfer is started by a token packet sent from the host apparatus, and a data packet and a hand shake packet are returned by the device in response to the token packet. Thus, the device cannot transmit any kind of information when ignoring the request from the host apparatus.
There are devices provided with a function for reducing the maximum consumption current and operating in such a state (function for low power consumption mode and the like). However, such devices cannot inform the host apparatus of the information of the reduced current consumption during connection (information that the device itself has a low power consumption mode function). A specific example of a low power consumption mode function includes, in a case of a disc apparatus and the like, a function for lowering power consumption of a motor by reducing the disc rotation speed. In a case of a printer or a scanner, the function of lowering the power consumption would be slowing the printing speed or the scanning speed.